home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 September / PCWorld_2006-09_cd.bin / v cisle / hexer / mpth_17.exe / {app} / scripts / Fill Data.mps < prev    next >
Text File  |  2006-04-30  |  3KB  |  135 lines

  1. INCLUDE '*.lng'
  2. = fill with calculated data
  3.  
  4. option globalvars 1
  5. var start dword count dword increment qword editorf file size byte
  6. var val1 byte val2 word val4 dword val8 qword
  7.  
  8. if currentfile == ""
  9.   editorf = fileopen('::new','c')
  10. else
  11.   editorf = fileopen('::current', 'rw')
  12. endif
  13.  
  14. number_radix = 10
  15. number_prefix = ''
  16. number_suffix = ''
  17. start = dword(input(__FF1__,__FF2__,text(filegetprop(editorf, 'selstart'))))
  18. if filegetprop(editorf, 'selcount') == 0
  19.   count = filesize(editorf) - start
  20. else
  21.   count = filegetprop(editorf, 'selcount')
  22. endif
  23. size = byte(bytestring(input(__FF1__, __FF3__, "1")))
  24. count = dword(bytestring(input(__FF1__, __FF4__, Text(count/size))))
  25. val8 = qword(bytestring(input(__FF1__,__FF5__,'0')))
  26. increment = qword(bytestring(input(__FF1__,__FF6__,'1')))
  27. val1=val8:val2=val8:val4=val8
  28. var cnt dword pc qword
  29.  
  30. pc = filepos(editorf)-start
  31.  
  32. if size==8
  33.   cnt = (count *8) +start
  34.   fileseek editorf (cnt-1)
  35.   fileseek editorf start
  36.   if increment == 1
  37.     loop schleife81 count
  38.   else
  39.     loop schleife8 count
  40.   endif
  41. else
  42.   if size==4
  43.     cnt = (count *4) +start
  44.     fileseek editorf (cnt-1)
  45.     fileseek editorf start
  46.     if increment == 1
  47.       loop schleife41 count
  48.     else
  49.       loop schleife4 count
  50.     endif
  51.   else
  52.     if size==2
  53.       cnt = (count *2) +start
  54.       fileseek editorf (cnt-1)
  55.       fileseek editorf start
  56.       if increment == 1
  57.         loop schleife21 count
  58.       else
  59.         loop schleife2 count
  60.       endif
  61.     else
  62.       cnt = count +start
  63.       fileseek editorf (cnt-1)
  64.       fileseek editorf start
  65.       if increment == 1
  66.         loop schleife11 count
  67.       else
  68.         loop schleife1 count
  69.       endif
  70.     endif
  71.   endif
  72. endif
  73. showprogress 100, 100
  74. fileclose editorf
  75. end
  76.  
  77.  
  78. @@schleife1
  79. filewrite editorf val1
  80. inc val1, increment
  81. showprogress cnt, pc
  82. inc pc
  83. return
  84.  
  85. @@schleife2
  86. filewrite editorf val2
  87. inc val2, increment
  88. showprogress cnt, pc
  89. inc pc, 2
  90. return
  91.  
  92. @@schleife4
  93. filewrite editorf val4
  94. inc val4, increment
  95. showprogress cnt, pc
  96. inc pc,4
  97. return
  98.  
  99. @@schleife8
  100. filewrite editorf val8
  101. inc val8, increment
  102. showprogress cnt, pc
  103. inc pc,8
  104. return
  105.  
  106. @@schleife11
  107. filewrite editorf val1
  108. inc val1
  109. showprogress cnt, pc
  110. inc pc
  111. return
  112.  
  113. @@schleife21
  114. filewrite editorf val2
  115. inc val2
  116. showprogress cnt, pc
  117. inc pc, 2
  118. return
  119.  
  120. @@schleife41
  121. filewrite editorf val4
  122. inc val4
  123. showprogress cnt, pc
  124. inc pc,4
  125. return
  126.  
  127. @@schleife81
  128. filewrite editorf val8
  129. inc val8
  130. showprogress cnt, pc
  131. inc pc,8
  132. return
  133.  
  134.  
  135.